﻿using FluentNHibernate.Mapping;

namespace Neturion.Dados
{
    public class MapFormaPagamento : ClassMap<FormaPagamento>
    {
        public MapFormaPagamento()
        {
            Table("formaspagamentos");
            Id(x => x.FormaPagamentoId);
            Map(x => x.Codigo).Unique().Index("idx_Codigo");
            Map(x => x.Descricao);
            Map(x => x.EnumTipoMovimentoFinanceiro).CustomType(typeof (EnumTipoMovimentoFinanceiro));
            References(x => x.TipoFormaPagamento).Not.LazyLoad();
            References(x => x.ContaBancoVinculada).Not.LazyLoad();
            Map(x => x.Carteira);
            Map(x => x.Convenio);
            Map(x => x.Aceite).CustomType(typeof(EnumAceiteFormaPagamento));
            Map(x => x.EnumEspecieFormaPagamento).CustomType(typeof(EnumEspecieFormaPagamento));
            Map(x => x.DiaVencimento);
            Map(x => x.LocalPagamento);
            Map(x => x.ForcarVencimento);
            Map(x => x.DiaFechamento);
            Map(x => x.TamanhoNossoNumero);
        }
    }
}